# MPC5500/WR/makefile: Wind River makefile for initialization program.
#
# Target: PowerPC 5500, ELF, e200z6, no floating point (-tPPC5554EN).
#         Link for execution by rtasim library (-t...:rtasim).
#

CC = dcc
AS = das
LD = dld

# Change the following line to suit your MPC5500 device definition files installation
HEADERS = "..\header"

# Uncomment one of the following lines to select a linker configuration file
# LINKER_FILE = WR_MPC5533_rom.ld
# LINKER_FILE = WR_MPC5533_ram.ld

# LINKER_FILE = WR_MPC5534_rom.ld
# LINKER_FILE = WR_MPC5534_ram.ld

# LINKER_FILE = WR_MPC5553_rom.ld
# LINKER_FILE = WR_MPC5553_ram.ld

# LINKER_FILE = WR_MPC5554_rom.ld
# LINKER_FILE = WR_MPC5554_ram.ld

 LINKER_FILE = WR_MPC5561_rom.ld
# LINKER_FILE = WR_MPC5561_ram.ld

# LINKER_FILE = WR_MPC5565_rom.ld
# LINKER_FILE = WR_MPC5565_ram.ld

# LINKER_FILE = WR_MPC5566_rom.ld
# LINKER_FILE = WR_MPC5566_ram.ld

# LINKER_FILE = WR_MPC5567_rom.ld
# LINKER_FILE = WR_MPC5567_ram.ld

OUTPUT = slave_node
OBJDIR = ..\obj
SOURCE = ..\src

TARGET = -tPPC5554ES:simple

CFLAGS = $(TARGET) -c -g -I $(HEADERS) -I $(SOURCE) -Xdebug-local-cie
ASFLAGS = $(TARGET) -g -I $(HEADERS) -I $(SOURCE)
LDFLAGS = $(TARGET) $(LINKER_FILE) -m6
LIBS    = -li -lchar -lc -lcfp -lg
 
OBJECTS =  	$(OBJDIR)/__start.o \
			$(OBJDIR)/mpc5500_asmcfg.o \
			$(OBJDIR)/mpc5500_ccdcfg.o \
			$(OBJDIR)/mpc5500_SRAM_load.o \
			$(OBJDIR)/flexCAN_test.o \
			$(OBJDIR)/DSPI_test.o \
			$(OBJDIR)/fs_gpio.o \
			$(OBJDIR)/main.o \
			$(OBJDIR)/vars.o

$(OUTPUT).elf : mkdir $(OBJECTS) $(LINKER_FILE)
	$(LD) $(LDFLAGS) $(LIBS) $(OBJECTS) -o $(OBJDIR)/$(OUTPUT).elf > $(OBJDIR)/$(OUTPUT).map
	ddump  -Rv $(OBJDIR)/$(OUTPUT).elf -o $(OBJDIR)/$(OUTPUT).s19

$(OBJDIR)/%.o: $(SOURCE)/%.c
	$(CC) $(CFLAGS) -Wa,-l -o $@ $<
	
$(OBJDIR)/%.o: $(SOURCE)/%.s
	$(AS) $(ASFLAGS) -o $@ $<

all: $(OUTPUT).elf

clean:
	rm ../obj/*
	rmdir ../obj

build: clean all
	
mkdir: 
	mkdir $(OBJDIR)
